package com.cn.demo4.util;

import java.sql.*;

/**
 * 链接数据库
 * @author Administrator
 */
public class JDBC {
    /**
     * 1.加载驱动
     * 2.取得连接
     * 3.编译sql语句
     * 4.执行sql语句
     * 5.返回结果集
     */
    private static Connection getConnection() {
        try {
            //加载驱动
            Class.forName("com.mysql.cj.jdbc.Driver");
            //连接数据库
            return DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/property?serverTimezone=Asia/Shanghai&useUnicode=true&zeroDateTimeBehavior=convertToNull&autoReconnect=true&characterEncoding=utf-8", "root", "luosir");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return null;
    }

    /**
     * 新增数据
     */

    public static int upDate(String sql) {
        try {

            //编译sql
            PreparedStatement preparedStatement = getConnection().prepareStatement(sql);
            //preparedStatement.executeUpdate()执行sql语句，返回类型为int
            //返回结果集
            return preparedStatement.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        //上面未执行就返回0，代表没有数据更新
        return 0;
    }

    /**
     * 查询数据
     */
    public static ResultSet select(String sql) {
        try {

            //编译sql
            PreparedStatement preparedStatement = getConnection().prepareStatement(sql);
            //preparedStatement.executeUpdate()执行sql语句，返回类型为int
            //返回结果集
            return preparedStatement.executeQuery();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        //上面未执行就返回null，代表没有数据更新
        return null;


    }
}
